#pragma once

#include "FITKInterfaceCustomDataAPI.h"
#include "FITK_Kernel/FITKCore/FITKAbstractNDataObject.h"
#include "FITK_Kernel/FITKCore/FITKVarientParams.h"
#include "FITK_Kernel/FITKCore/FITKAbstractDataManager.hpp"

namespace Interface
{
	class FITKInterfaceCustomDataAPI FITKCDDataInlet : public Core::FITKAbstractNDataObject, public Core::FITKVarientParams
    {
    public:
        explicit FITKCDDataInlet() = default;
        virtual ~FITKCDDataInlet() = default;

		// SET
		void setInlet_Shape(int nVal);
		void setPosition(double* dVal);
		void setFlow_Rate(double* dVal);
		void setInlet_Area(double dVal);

		// GET
		int getInlet_Shape();
		double* getPosition();
		double* getFlow_Rate();
		double getInlet_Area();
    };


	class FITKInterfaceCustomDataAPI FITKCDDataInletManager : public Core::FITKAbstractDataManager<FITKCDDataInlet>
	{
	public:
		explicit FITKCDDataInletManager() = default;
		virtual ~FITKCDDataInletManager() = default;
	};
}

